package br.util;

import br.dao.ChefiaDAO;
import br.dao.ChefiaDAOHibernate;
import br.dao.CidadeDAO;
import br.dao.CidadeDAOHibernate;
import br.dao.PessoaDAO;
import br.dao.PessoaDAOHibernate;
import br.dao.SecaoDAO;
import br.dao.SecaoDAOHibernate;
import br.dao.UsuarioDAO;
import br.dao.UsuarioDAOHibernate;
import br.dao.VotacaoLocalDAO;
import br.dao.VotacaoLocalDAOHibernate;
import br.dao.ZonaDAO;
import br.dao.ZonaDAOHibernate;

public class DAOFactory {

	public static PessoaDAO criaClienteDAO() {
		PessoaDAOHibernate clienteDAOHibernate = new PessoaDAOHibernate();
		clienteDAOHibernate.setSessao(HibernateUtil.getSession()
				.getCurrentSession());
		return clienteDAOHibernate;
	}
	
	public static UsuarioDAO criaUsuarioDAO(){
		
		UsuarioDAOHibernate usuarioDAOHibernate = new UsuarioDAOHibernate();
		usuarioDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return usuarioDAOHibernate;
		
	}
	
	public static VotacaoLocalDAO criaVotacaoDAO(){
		VotacaoLocalDAOHibernate votacaoLocalDAOHibernate = new VotacaoLocalDAOHibernate();
		votacaoLocalDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return votacaoLocalDAOHibernate;
	}
	
	public static ChefiaDAO criaChefiaDAO(){
		ChefiaDAOHibernate chefiaDAOHibernate = new ChefiaDAOHibernate();
		chefiaDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return chefiaDAOHibernate;
			
	}
	
	public static ZonaDAO criaZonaDAO(){
		ZonaDAOHibernate zonaDAOHibernate = new ZonaDAOHibernate();
		zonaDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return zonaDAOHibernate;
	}
	
	public static SecaoDAO criaSecaoDAO(){
		SecaoDAOHibernate secaoDAOHibernate = new SecaoDAOHibernate();
		secaoDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return secaoDAOHibernate;
	}
	
	public static CidadeDAO criaCidadeDAO(){
		CidadeDAOHibernate cidadeDAOHibernate = new CidadeDAOHibernate();
		cidadeDAOHibernate.setSessao(HibernateUtil.getSession().getCurrentSession());
		return cidadeDAOHibernate;
	}
	
}
